package deepr.behaviour;

import deepr.core.DisposeContext;
import deepr.entity.DeeprRequest;
import deepr.entity.DeeprResponse;
import deepr.filter.DbFilterBehavior;
import lombok.Data;

@Data
public abstract class RequestDispose {

  private DisposeContext ctx;
  private DbFilterBehavior dbFilterBehavior;
  private DeeprResponse deeprResponse = null;
  private boolean finished = false;


  public RequestDispose(DisposeContext ctx, DbFilterBehavior dbFilterBehavior) {
    this.ctx = ctx;
    this.dbFilterBehavior = dbFilterBehavior;
  }

  public abstract DeeprResponse list(DeeprRequest deeprRequest) throws Exception;

  public abstract DeeprResponse info(DeeprRequest deeprRequest) throws Exception;

}
